package cn.zhuo.knowledge.util.lombok.construct;

import lombok.AllArgsConstructor;
import lombok.RequiredArgsConstructor;

/**
 * <p>
 *
 * @author z2huo
 */
@RequiredArgsConstructor
@AllArgsConstructor
class AllArgsConstructorTest2 {

    private String name;

    private Integer age;

    private final String code;

}

/*

如果类上面声明了 @RequiredArgsConstructor 和 @AllArgsConstructor 两个注解
则会生成如下两个构造器，一个是只有 final 属性，另一个是所有属性的构造器
并且全参构造器参数位置是根据字段在类中的位置决定的

class AllArgsConstructorTest2 {
    private String name;
    private Integer age;
    private final String code;

    public AllArgsConstructorTest2(String code) {
        this.code = code;
    }

    public AllArgsConstructorTest2(String name, Integer age, String code) {
        this.name = name;
        this.age = age;
        this.code = code;
    }
}

 */